The present invention relates generally to an improved telecommunications system and in particular to a method and apparatus for maintaining data, such as routing tables and software, used by network elements in a telecommunications network.
A communications network serves to transport information among a number of locations. The information to be transported is usually presented to the network in the form of time-domain electrical signals and may represent any combination of telephony, video, or computer data in a variety of formats. To transport such information, a typical communications network includes various physical sites, or xe2x80x9cnodes,xe2x80x9d and information conduits, called xe2x80x9clinks,xe2x80x9d that interconnect the nodes. Each link serves to carry information from one node to another node. Links are often implemented as electric cables, optical fibers, or radio paths. Each node typically contains some means for switching a stream of incoming data from one link onto one of many outgoing links. Nodes can thereby perform routing of information through the network via the associated links.
Various equipment, referred to as xe2x80x9cnetwork elementsxe2x80x9d, are placed at nodes along links for combining, separating, transforming, conditioning, and routing information signals. A xe2x80x9cswitching elementxe2x80x9d is a type of network element that causes information to follow a particular path through the network. The setting up of a path from a source node to a destination node is typically accomplished by switching elements within the network nodes. The behavior of each switching element is determined by software instructions and data tables accessed by a data processor controlling the switching element.
To ensure proper operation of the network, and particularly cooperation of nodes in performing routing of information, all switching elements in the network must have correct software instructions and data tables. Likewise, other types of network elements often use software and data tables to control their respective functions. Maintaining consistent operating information among all network elements is necessary for proper network operation but is a difficult task. In a large network, both data tables and software loads are often large and cumbersome to maintain. Furthermore, updates of switching data tables used by switching elements are frequently necessary due to constant changes in the topology of, and provisioning within, the network.
Network engineers keep a master table representing the interconnections among the switching elements in the nodes of a network. To perform routing of information through the network, each switching element must have access to some or all of the information in the master table. One way of providing this access is to have all switching elements consult a centralized table. A centralized table can be readily changed by network engineers to reflect the most up to date information about connectivity within the telecommunications network. A drawback with this type of system is that each node within the telecommunications network must constantly access the centralized table. This constant need for access to a centralized table leads to performance bottlenecks. Moreover, if the centralized table is rendered unavailable, then the entire network can be disabled.
The alternative approach of using distributed tables avoids some of the foregoing problems but introduces new problems as well. The main problem with using distributed tables is the difficulty in maintaining synchronization among table contents if, for example, a copy of the master table is replicated at each switching element. A mismatch in the table contents among various nodes in the telecommunications network may cause traffic to be mishandled and lost. This implies that changes to table contents must be made simultaneously through the network. In practice, the network cannot be disabled for any length of time to allow for contents of all tables to be updated. Furthermore, keeping a copy of the master table at each switch can be unwieldy because of the size of the table.
On the other hand, keeping more locally pertinent subsets of the master table complicates the process of managing customized contents of the table at each switching element.
Therefore, what is needed is an improved method and apparatus for maintaining operating information among network elements, such as routing information among switching elements, in a communications network.
The present invention provides a method and an apparatus in a communications system for maintaining data and software used in operating network elements within the communications system. As the need arises, data required by a network element is obtained from a network-wide data repository function that can provide the data. This need for the network element to obtain data from the data repository function may arise, for example, due to changes in network topology, operational status of the network, or availability of new information within the data repository function. For example, the network-wide data repository functions may dispense portions of a master routing table or revised software loads for the network elements. In a preferred embodiment, the network elements may selectively request subsets of the data contained in the network-wide data repository function and store the retrieved information locally for subsequent use by the network element.